A Relation Algebraic Semantics for a Lazy Functional Logic Language
نویسندگان
چکیده
We propose a special relation algebraic model as semantics for lazy functional logic languages. The resulting semantics provides several interesting advantages over former approaches for this class of languages. For once, the equational reasoning supported by an algebraic approach implies a great increase in the economy and readability of proofs. Second, the richly developed field of relation algebra provides a pool of theorems and insights that can now be utilized in reasoning about functional logic programs. A further advantage is the strong and simple correspondence between functional logic programs and the semantics developed here. This correspondence enables us to go both ways, i.e. from program to semantics and back. The latter direction is essential for using relation algebraic transformations to optimize functional logic code. Last but not least, the development of the relation algebraic formalization gave us valuable insights, especially with respect to the desired properties of function inversion.
منابع مشابه
Algebra of Logic Programming
A declarative programming language has two kinds of semantics The more abstract helps in reasoning about speci cations and correctness while an operational semantics determines the manner of program exe cution A correct program should reconcile its abstract meaning with its concrete interpretation To help in this we present a kind of algebraic semantics for logic pro gramming It lists only thos...
متن کاملEmbedding Multiset Constraints into a Lazy Functional Logic Language
1 I n t r o d u c t i o n The combination of different declarative paradigms (specially functional and logic programming) has been widely treated in the literature (see [12] for a survey). Many approaches to the integration of functional and logic programming take constructor-based conditional term rewriting systems as programs. In order to deal properly with non-strict functions, lazy function...
متن کاملStrictness Properties of Lazy Algebraic Datatypes
A new construction of a finite set of strictness properties for any lazy algebraic datatype is presented. The construction is based on the categorical view of the solutions to the recursive domain equations associated with such types as initial algebras. We then show how the initial algebra induction principle can be used to reason about the entailment relation on the chosen collection of prope...
متن کاملReal Constraints within a Functional Logic Language
We present a declarative language { CFLP(R) { which integrates lazy functional programming, logic programming and constraint solving over real numbers. Both a (higher order, polymorphic, lazy) functional language and (pure) CLP(R) can be isolated as subsets of our language. Through several examples we attempt to demonstrate the interest of CFLP(R). The execution mechanism of the language consis...
متن کاملLazy Semiring Neighbours and Some Applications
We extend an earlier algebraic approach to Neighbourhood Logic (NL) from domain semirings to lazy semirings yielding lazy semiring neighbours. Furthermore we show three important applications for these. The first one extends NL to intervals with infinite length. The second one applies lazy semiring neighbours in an algebraic semantics of the branching time temporal logic CTL∗. The third one set...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008